// function debounce(fn,wait){
//     let timer = null
//     return function (){
//         clearTimeout(timer)
//         timer = setTimeout(()=>{
//             fn.call(this,arguments)
//         },wait)
//     }
// }
//
// function handleAction() {
//     console.log('Action performed!');
// }
// let debouncedAction =debounce(handleAction,5000)
// debouncedAction()
// debouncedAction()
// // debouncedAction()
// console.log(123)
//
// function throttle(fn,wait){
//     let lasttime = 0;
//     return function (){
//         let now =  Date.now();
//         if(now-lasttime>=wait){
//             lasttime = now
//             console.log(arguments)
//             fn.call(this,arguments)
//         }
//
//     }
// }
// function handleAction2() {
//     console.log('Action performed22222!');
// }
// let tt = throttle(handleAction2,100)
// tt()

//
// let n = 1
//
// while  (1<=n<=100){
//     n+=1
//     console.log(n)
// }

function test(x,y){
    return {x, y}
}

const {x,y} = test(2, 3);
// console.log({x,y})
// console.log(test(2,3))

const data = [
  {'hellow': 1},
  {'world': 1},
  {'flask': 1},
  {'jonh': 1},
  {'jack': 1},
  {'heoow': 1},
  {'hellow': 1},
  {'world': 1},
  {'world': 1}
];

const wordCount = data.reduce((acc, obj) => {
    console.log(acc,obj)
  for (let word in obj) {
      console.log(word)
    if (acc[word]) {
        console.log(acc[word])
      acc[word] += obj[word];
    } else {
      acc[word] = obj[word];
    }
  }
  return acc;
}, {});

console.log(wordCount);
